package supershop3.dao;

import java.util.List;

import supershop3.dto.ProductDTO;
import supershop3.model.Product;

public interface IProductDao {

	/**查询商品信息
	 * @param dto 分页及筛选条件
	 * @return 商品列表
	 */
	List<Product> findAll(ProductDTO dto);
	
	/**将商品推荐到首页
	 * @param pid 商品编号
	 * @return 1表示推荐成功
	 */
	int recommend(int pid,String isToday);
	
	/**上架/下架
	 * @param pid 商品编号
	 * @return 1表示操作成功
	 */
	int putaway(int pid,String isPutOnSale);
	
	/**修改商品主图
	 * @param pid 商品编号
	 * @param url 新图片地址
	 * @return 1表示修改成功
	 */
	int updateImage(int pid,String url);
	
	/**删除商品——实际是修改状态
	 * @param pid 商品编号
	 * @return 1表示删除成功
	 */
	int del(int pid);
	
	/**修改商品信息
	 * @param p 新的商品信息
	 * @return 1表示修改成功
	 */
	int edit(Product p);
	
	/**添加新商品
	 * @param p 新的商品信息
	 * @return 1表示添加成功
	 */
	int add(Product p);
	
	/**查询今日推荐商品
	 * @return 今日推荐商品列表
	 */
	List<Product> findIsToday();
	
	/**显示商品详情
	 * @param pid 商品编号
	 * @return 查询的商品信息
	 */
	Product findByID(int pid);
	
	/**求记录数
	 * @param dto 查询条件
	 * @return 记录数
	 */
	int getCount(ProductDTO dto);
}
